package com.recharge.domain.vo;

import com.recharge.common.domain.BaseDO;
import com.recharge.common.util.TemplateUtils;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

/**
 * <h1>描述: 提现记录</h1>
 * @author kui
 * @date 2020/8/24 15:35
 */
@Setter
@Getter
public class WithdrawDO extends BaseDO {

    /**
     * 交易ID
     */
    private String transactionId;

    /**
     * 商户ID
     */
    private String merchantId;

    /**
     * 提现记录号
     */
    private String withdrawNo;

    /**
     * 交易号
     */
    private String transactionNo;

    /**
     * 商户名字
     */
    private String merchantName;

    /**
     * 存款金额
     */
    private Long amount;

    /**
     * 银行名
     */
    private String bankName;

    /**
     * 账户号
     */
    private String bankAccount;

    /**
     * 1.对公账户 2.个人账户

     */
    private Integer bankAccountType;

    /**
     * 银行转账流水
     */
    private String serialNumber;

    /**
     * 申请人
     */
    private String applicant;

    /**
     * 申请时间
     */
    private Date applicantDate;

    /**
     * 审核人
     */
    private String checker;

    /**
     * 审核时间
     */
    private Date checkerDate;

    /**
     * 0.待审核 1.审核通过 2.审核未通过 3.已打款 4.已退款 5.取消

     */
    private Integer status;

    /**
     * 备注
     */
    private String remark;

    /**
     * -1 删除 1 有效\n
     */
    private Integer isDelete;

    /**
     * 操作前金额
     */
    private Long beforeBalance;

    /**
     * 操作后金额
     */
    private Long afterBalance;

    /**
     * 表单验证
     * @return
     */
    public boolean verification() {
        if (TemplateUtils.isEmpty(merchantId)){return false;}
        if (TemplateUtils.isEmpty(amount)){return false;}
        if (amount < 1000L || amount > 10000000000L){
            return false;
        }
        return true;
    }
}
